package edu.uoc.tdp.common;

import edu.uoc.tdp.entity.*;
import java.rmi.RemoteException;
import java.util.List;

/**
 * @author tomeu 
 */
public interface SubsystemConnect extends java.rmi.Remote {

    public String test() throws RemoteException;

    public User Login(String email, String password) throws RemoteException, EIssueException;

    public boolean PayBooking(int bookingId, double amount) throws RemoteException, EIssueException;

    public boolean CancelBooking(int bookingId, String userName) throws RemoteException, EIssueException;

    public List<Booking> GetAllBookings(String userid, String from, String to) throws RemoteException, EIssueException ;

    public List<Booking> GetAllBookings() throws RemoteException, EIssueException;
    
    public List<Resource> GetOneBookingResources(int bookingid) throws RemoteException, EIssueException;

    public boolean SaveBooking(Booking booking) throws RemoteException, EIssueException;

    public boolean SaveBookingResource(int bookingId, int resourceId) throws RemoteException, EIssueException;
    
    public int GetNewBookingId ()throws RemoteException, EIssueException;
    
    public double CalcPrice(int bookingId) throws RemoteException, EIssueException;
    
    public int GetPriceBooking(int bookingId) throws RemoteException, EIssueException;
}